#pragma once
typedef signed char int8_t;
typedef unsigned char   uint8_t;
typedef short  int16_t;
typedef unsigned short  uint16_t;
typedef int  int32_t;
typedef unsigned   uint32_t;
typedef long long  int64_t;
typedef unsigned long long   uint64_t;

#define ROMDISK_MAGIC 0xC001D15C

typedef struct ROMDISK_FILE {
	struct ROMDISK_FILE *next;//0
	uint8_t *data;//4
	uint8_t filename[80];
	uint32_t length;
} ROMDISK_FILE_T;

typedef struct ROMDISK_HEADER {
	uint32_t magic;
	ROMDISK_FILE_T *file_list;//4
	uint32_t file_count;//8
	uint32_t image_size;//12
	uint8_t volname[40];
} ROMDISK_HEADER_T;